package com.yupi.kqapibackend.service.impl;


import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yupi.kqapibackend.common.ErrorCode;
import com.yupi.kqapibackend.exception.BusinessException;
import com.yupi.kqapibackend.mapper.InterfaceInfoMapper;
import com.yupi.kqapibackend.model.dto.interfaceinfo.InterfaceInfoQueryRequest;
import com.yupi.kqapibackend.model.entity.InterfaceInfo;
import com.yupi.kqapibackend.service.InterfaceInfoService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;

/**
* @author lenovo
*/
@Service
public class InterfaceInfoServiceImpl extends ServiceImpl<InterfaceInfoMapper, InterfaceInfo>
    implements InterfaceInfoService {
    @Override
    public void validInterfaceInfo(InterfaceInfo interfaceinfo, boolean add) {
        String name = interfaceinfo.getName();

        // 判断是否为新增方法
        if (add) {
            // 完成对参数的校验
            if (StringUtils.isAnyBlank(name)) {
                throw new BusinessException(ErrorCode.PARAMS_ERROR);
            }
        }
        // 创建的时候检验参数是否为空
        // 新增的时候检验参数是否合理



    }

    @Override
    public Long onlineInterface(Long id) {
        UpdateWrapper<InterfaceInfo> interfaceInfoUpdateWrapper = new UpdateWrapper<>();
        interfaceInfoUpdateWrapper.eq("id", id);
        interfaceInfoUpdateWrapper.set("status", 1);
        this.update(interfaceInfoUpdateWrapper);
        return id;
    }

    @Override
    public Wrapper<InterfaceInfo> getQueryWrapper(InterfaceInfoQueryRequest interfaceinfoQueryRequest) {
        return null;
    }

    @Override
    public Long offlineInterface(Long id) {
        UpdateWrapper<InterfaceInfo> interfaceInfoUpdateWrapper = new UpdateWrapper<>();
        interfaceInfoUpdateWrapper.eq("id", id);
        interfaceInfoUpdateWrapper.set("status", 0);
        this.update(interfaceInfoUpdateWrapper);
        return id;
    }
}




